// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App'
import router from './router' // 引入路由对象模块
import './filters' // 引入自定义的过滤器
import './mock/mockServer' // 加载运行一次 mockServer.js
import store from './store' // 引入vuex
import { Button, Cell, InfiniteScroll } from 'mint-ui' // 引入mintui组件

import { Card, Upload, Dialog, Message, MessageBox } from 'element-ui' // 引入element-ui组件
// import ElementUI from 'element-ui'
// import 'element-ui/lib/theme-chalk/index.css'
// import locale from 'element-ui/lib/locale/lang/zh-CN'
// import VueLazyload from 'vue-lazyload'
// 导入加载等待图片
// import loading from './common/image/loading.gif'

// import '@/interceptor.js'

// 全局使用懒加载
// Vue.use(VueLazyload, {
//   loading
// })

// 全局使用mint-ui的组件
Vue.component(Button.name, Button)
Vue.component(Cell.name, Cell)
// 使用这种方式引入会报错
// Vue.component(InfiniteScroll.name, InfiniteScroll)
Vue.use(InfiniteScroll) // 使用这种方式没问题

// 全局使用 element-ui 的组件
Vue.component(Card.name, Card)
Vue.component(Upload.name, Upload)
Vue.component(Dialog.name, Dialog)
Vue.component(Message.name, Message)
Vue.component(MessageBox.name, MessageBox)
// Vue.use(ElementUI, {locale})
// Vue.use(ElementUI)
// 按需加载element组件时候需要添加
// https://blog.csdn.net/peade/article/details/100383031
// Vue.prototype.$loading = Loading.service;
Vue.prototype.$msgbox = MessageBox;
Vue.prototype.$alert = MessageBox.alert;
Vue.prototype.$confirm = MessageBox.confirm;
Vue.prototype.$prompt = MessageBox.prompt;
// Vue.prototype.$notify = Notification;
Vue.prototype.$message = Message;


// 生产环境时自动设置为 false 以阻止 vue 在启动时生成生产提示。
Vue.config.productionTip = (process.env.NODE_ENV !== 'production')

/* eslint-disable no-new */
new Vue({
  el: '#app',
  router,
  store,
  components: { App },
  template: '<App/>'
})
